<?php
include __DIR__.'/../vendor/autoload.php'; 
 
  
$ip='127.0.0.1';
$port=8109;
use \xlx\Actor; 
Actor::connect($ip,$port);


while(1){ 
    usleep(10000);
    Actor::send('name',[ ]);

}


// Actor::create(function($actor,$pid){ 
//     while (1) {
//         Actor::spawn(function()use($pid){ 
//             for ($i=0; $i < 10000; $i++) {  
//                 Actor::spawn_link($pid,['Test','f1'],$i);
//             }
//         }); 
//         $arr=[];
//         yield $actor->receive(function($data)use(&$arr){ 
//             $arr[]=$data;
//             return count($arr) >= 10000;
//         } );  
//         Actor::spawn_link($pid,['Test','f2'] ); 
//         yield $actor->receive();
//     }
// });

//Actor::send('master',['aaa','bbb']); 
// Actor::create(function(Actor $self,$pid) { 
//     yield $self->register('master');
//     yield $self->receive(function($data){
//         print_r($data);
//     });
// }); 
 

// Actor::create(function(Actor $actor,$pid){  
//     $k=100000;  
//     Actor::spawn(function()use($pid,$k){  
//         echo "----------------SPAWN---------------\n";  
//         for ($i=0; $i < $k; $i++) {  
//             Actor::spawn_link($pid,function()use($i){//to server  
//                 /* void&return&throw */ //并行任务 
//                 return $i;
//             });
//         }
//         echo "----------------END---------------\n";
//     }); 
//     echo "----------------RECEIVE---------------\n"; 
//     yield $actor->receive(function($data)use(&$arr,$k){  
//         //if(count($arr)%1000==0)echo count($arr)."\n";
//         $arr[]=$data;
//         return count($arr)>=$k;//这里写错强行终止主进程 服务会爆炸
//     });   
//     Actor::send($pid,['aaa']); 
//     yield $actor->receive(function($data)use(&$ret){  
//         return $ret = $data;
//     });  
//     print_r($ret); 
//     //print_r(count($arr));
// });
 
echo "------------------EXIT-------------------";